package com.julius.design.pattern.builder;

import java.util.ArrayList;
import java.util.Collections;
import java.util.List;

/**
 * <p>
 *      套餐对象
 * </p>
 */
public class Meal {


    /**
     * 条目列表
     */
    private List<Item> itemList = new ArrayList<>();


    /**
     * 添加食物条目
     * @param item 食物
     */
    public Meal append(Item item) {
        itemList.add(item);
        return this;
    }

    /**
     * 获取总价
     * @return 总价
     */
    public float getCost(){
        float cost = 0.0F;
        for (Item item : itemList) {
            cost+=item.price();
        }
        return cost;
    }

    /**
     * 套餐响应打印
     */
    public void showItems() {
        for (Item item : itemList) {
            System.out.println("食物名称："+item.name()+",打包方式："+item.packing().pack()+"单价："+item.price());
        }
    }

}
